package org.aplikator.client.shared.data;

import org.jboss.errai.common.client.api.annotations.Portable;

import java.io.Serializable;

@SuppressWarnings("serial")
public interface ListItem extends Serializable {

	public Serializable getValue();

	public String getName();

	@Portable
	public static class Default implements ListItem {
		private Serializable value;
		private String name;

		@SuppressWarnings("unused")
		public Default() { // TODO custom marshaller
		}

		public Default(Serializable value, String name) {
			super();
			this.value = value;
			this.name = name;
		}

		public Serializable getValue() {
			return value;
		}

		public String getName() {
			return name;
		}
	}
}
